Automated creation and delivery of database content

ABSTRACT

A method and apparatus are disclosed which automatically build a database by automatically assigning links to an expert, pushing content to an expert, providing expert annotation, and linking the content to an annotation database. A term is selected by applying rules. An advertiser can sponsor the term. Content windows can be attached to the term, the content window containing information such as definitions, related products or services, sponsorship information, information from content syndicators, translations and reference works. A utility is available to the expert that allows the expert to analyze the term in context by extending or reducing the sentence or paragraph the word is contained in. Data objects that represent the contents of the database and templates are syndicated to remote servers running a processing engine. The processing engine uses these data objects to execute linking rules without requiring a connection to the database.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application is a continuation of U.S. patent application Ser. No. 12/714,825, filed Mar. 1, 2010, now U.S. Pat. No. 8,214,349, which is a continuation of U.S. patent application Ser. No. 11/554,241, filed Oct. 30, 2006, now U.S. Pat. No. 7,672,985, which is a continuation of U.S. patent application Ser. No. 10/218,738, filed Aug. 15, 2002, now U.S. Pat. No. 7,130,861, which claims priority to U.S. Provisional Patent Application No. 60/313,041, filed Aug. 16, 2001, each of which is hereby incorporated by reference herein in its entirety.

FIELD OF THE INVENTION

The invention relates generally to database building and delivery of database content. More particularly, the invention relates to an apparatus and to a family of methods that automatically builds a central database by automatically assigning links to an expert for notation and then syndicates content from that database to remote application installations.

DESCRIPTION OF THE PRIOR ART

Today a plethora of systems are available to assist electronic publishers in automating the indexing, searching and organization of their documents. Vendors such as Sopheon have applications that allow organizations to capture knowledge through structured authoring tools, terminology management, and thesauri. Software developer, Trados, identifies linguistic content and extracts sections for translation, references against the translation memory and glossaries to provide relevant information to translators, routes jobs to the appropriate translation teams and content reviewers, assigns users, deadlines, review steps, and special instructions, and provides project management and vendor management tools. Companies such as Xerox, STAR Group, DicoMaker, SDL International, Multi-Corpora, Multisystems, and ATRIL provide terminology and translation memory creation and management tools. And companies such as Semio, Sageware, Quiver, Applied Semantics, Inxight, and Interwoven provide document categorizers that analyze, categorize, and classify documents into human discernable groupings that accelerate the search process.

The patent literature shows that several inventors have worked on the process of database creation over the past decade. VanderDrift in U.S. Pat. No. 5,455,945 (1995) refers to a “system and method for dynamically displaying entering, and updating data from a database”. And Wayne et al in EP0840240 refer to “a system for performing intelligent analysis and segmentation of a computer database”. And others have worked on a process for aggregating user data across large data sets such as Barrett et al. in U.S. Pat. No. 5,727,129 (1998) who refer to a “network system for profiling and actively facilitating user activities”.

The problem with all current techniques and systems for analyzing and organizing documents is that none can claim the ability to automatically create consistent, high quality links and associations between concepts and pieces of knowledge in a cost effective manner. The invention is based on the premise during the process of aggregating terminology and associating knowledge that human beings will necessarily be involved. Humans may also tend to introduce errors into the process but at a much lower rate than software based automated categorizers or document processors.

The invention is hence an attempt to create a scalable system for managing the process of creating richly linked associations between terms and related content. It also specifies a commercial infrastructure that will enable the costs of production to be managed and for incentives to be generated that will enable experts to invest time and energy in the production of large-scale link databases.

SUMMARY OF THE INVENTION

A method and apparatus is disclosed which builds a database by automatically assigning terms to an expert, providing an interface and methods for the expert to enter supplemental information for that term, including definitions, explanations, specifications, links, related products or services, sponsorship information, information from content syndicators, translations, and reference works and then merging the expert-created content to a central database. Information from the database needed to create links and the rules for linking to database content are syndicated to remote servers. Tags or other identifiers are inserted within unstructured text which utilize database information in their construction or provide a means to access the database content. Connection to the database is not required at the time linking is performed.

The process begins by identifying terms of interest within a corpus of documents. Term identification may be accomplished by crawling and parsing the corpus to select terms through application of rules, such as, a term was not previously in the database, an unusually frequent use of the term, the term is an article, or the term is an unusual part of speech. Other methods of identifying terms may also be employed, including human effort, the use of search logs, taxonomy nodes, taxonomy evidence terms, meta-tags, existing glossaries or existing filters.

Once a list of terms is assembled, individual terms are assigned to experts to provide supplemental information on the term. A utility is provided to the expert that manages term assignments, allows the expert to analyze the term in context by showing expandable examples of its use in the corpus of documents, and provides the interface for entry of supplemental information as well as meta-data to help characterize the supplemental information.

Utilities are provided to the publisher that allow them to establish the rules for choosing the supplemental information which should appear for a term, for tagging the term on the page, and for designing the presentation window for that supplemental information.

A content publisher wishing to provide links from words and phrases in a document to the supplemental information contained in the database installs an automated tagging engine (the RichLink Processor) within their network. The RichLink Processor automatically downloads, from the central database, the data structures necessary to perform high-speed tagging of the text and to execute the tagging rules without requiring a connection to the database at the time of tagging, although it remains possible to do so. The RichLink Processor performs routine synchronization of its data structures with the database to insure that changes to content within the database, tagging rules, or presentation rules are reflected locally.

Several modules are included to help edit and store user preferences, track and report usage, and manage business processes.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating the relationship between modules that comprise the automated database creation and delivery system, according to the invention.

FIG. 2 is a diagram illustrating the databases that comprise the system databases, according to the present invention.

FIG. 3 is a diagram illustrating the modules that comprise the business interface, according to the present invention.

FIG. 4 is a diagram illustrating the modules that comprise the account management and eCommerce system, according to the present invention.

FIG. 5 is a diagram illustrating the modules that comprise the eMarketing management system, according to the present invention.

FIG. 6 is a diagram illustrating the modules that comprise the term discovery utilities system, according to the present invention.

FIG. 7 is a diagram illustrating the steps performed to automatically create, syndicate, and link to database content, according to the present invention.

FIGS. 8A, 8B 8C, and 8D are diagrams illustrating the Term Finder Editor List screen, according to the present invention.

FIGS. 9A and 9B are diagrams illustrating the modules that comprise the RichLink Processor system and the operation of that system, according to the present invention.

FIG. 10 is a diagram illustrating the modules that comprise the RichLink Contextual Content Server, according to the present invention.

FIG. 11 is a diagram illustrating the modules that comprise the content presentation system, according to the present invention.

FIG. 12 is a diagram illustrating the modules that comprise the term database, according to the present invention.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

FIG. 1 illustrates the network of modules 100 that, along with human expert analysis, performs interrelated functions that automatically create and deliver database content in the environment of online browsing and/or advertising.

The custom 1220 and sponsored 1230 dictionaries are built by automatically assigning terms to an expert, pushing content to an expert, providing expert annotation, and inserting the content into the term database. The modules that perform the interrelated functions include, system databases that store data, business interfaces that interface users with the modules, account management that manages account information, eMarketing management that enables a user to manage marketing related items, utilities that automate the process of term discovery, the RichLink Processor that tags documents, the content delivery system for presenting embedded information and an editing suite for modifying user options.

System Databases 105

FIG. 2 illustrates the databases in this core component 105 that house system data used by system processes. The databases contain templates (discussed infra), customer information, click information (discussed infra) and the term database (discussed infra).

Templates Database 210

This module 210 is the central storage location for templates. These templates are used as the foundation for customization. Templates may include combinations of databases and layers and presentation rules for the RichLink Content Window 170. This module interacts with the RichLink Contextual Content Server 135 module when creating new templates.

Customer Information Database 220

This module 220 serves as a central storage location for customer information. A portfolio for each customer is created and contains customer related information such as customer contact information, customer technical information, license information, sales tracking information, and prototype files. This module reports to the Account Management module (discussed infra), the Sales Force Automation Interface (discussed infra), and the eMarketing module (discussed infra).

Click Information Database 230

This module 230 stores data from the Click Info Capture module (discussed infra). Such information includes pages of activity, views of individual terms, views of individual layers, and click-throughs to hyperlink content items. The module reports to the Account Management and eMarketing modules (discussed infra).

RichLink Term Database 240

This module 240 is a library that contains all terms and associated content that can be sorted and queried, using business criteria to organize into dictionaries of similar information. Content types such as text, image, sound, video, mixed media, and forms may be stored in this database. There is a one-to-many relationship developed between matching terms and content associated with matching terms. Content may be identified in a number of ways to allow automated identification of the dictionary to which it belongs. Examples of identification information are the publisher name, sponsor name, site name, readership, and sponsorship dates. Content may also be associated with metadata to allow automated identification of the category to which it belongs.

Business Interface 110

FIG. 3 illustrates the modules in this core component group 110 that interfaces with operational business systems to insure smooth handling of customers from sales, services, invoicing, payment, and accounting.

Sales Force Automation (SFA) Interface 310

The SFA Interface 310 handles interaction with the customer information database and the corresponding online commercial website. Typically, a customer initiates contact online. The customer information is pulled from the database and sent to the SFA module. Customer information, prototype files, and technical information are stored in the customer database 220.

Accounts Payable (AP)/Accounts Receivable (AR) Interface 320

This interface 320 handles the exchange of information between the customer database 220 and AP and AR information. Customers are able to access invoicing and account balance information online. Click information data used in eMarketing pricing models are sent to the AP/AR interface and invoices issued and tracked. Online transactions such as subscriptions and license information are stored in the customer database and are sent to the AP/AR interface for invoicing.

Account Management and E-Commerce 115

FIG. 4 illustrates the modules in this component group 115 that allows customers, partners, and services employees to manage account information and to purchase additional products and services as their needs develop or as additional services and capabilities are offered. Customers using this module are able to update this component according to their needs.

Home Page 410

A user of the system has a home page portal which links them to parts of the system and provides access to personalized content such as news, products and service announcements and promotional items. The homepage includes features such as focused page content, based on the user's profile and preferences. The homepage also contains user information, such as user rights, events, links to account management and eCommerce modules, links to eMarketing modules, links to RichLink Contextual Content server modules, links to a support and product website, forum links and news, success stories and product announcements.

View/Edit Account Information 420

This module enables customer modification of account information, such as contact and technical information. From this module a user is able to view and edit contact information, view and edit technical information, view account balances and invoices, view and edit payment methods, view licenses, select newsletter options, and specify the contents of a user home page.

System Rights Administration 430

This module enables companies to assign role-based privileges to a user. For example, the role of marketing manager has privileges related to marketing, such as, editing the appearance of the RichLink Content Window. The role of an editor has privileges related to content, such as editing and adding content for terms. Email can be used to notify users of their privileges and of any privilege changes. Error-checking routines are present which ensure the proper privileges are assigned.

Activity Reporting 440

This module tracks activity, system capacity, and metrics for analysis, planning, and support. Activity statistics include server, file processing and click information. Examples of file processing statistics are, files processed, dictionaries used, errors and links created. Examples of click statistics are clicks per term, number of content views, click-throughs, survey results, page analysis, ID session analysis, most viewed terms and content, and least viewed terms and content. Server statistics include time in certain phases, server logs, uptime and downtime.

Reporting capabilities can be tailored to a user's roles and privileges so different reports are available to employees, customers, and sponsors. A user can customize reports by specifying the date range for the report and modifying other query or sort criteria.

E-Commerce 450

This module sets up a generic configuration for the online sale of products and services. The module provides a reseller/partner ordering system, options to allow a user to add products and services, a marketplace for the sale of term sponsorships, a quotation tool, and a licensing system for hosted service and software customers that run the service at their site.

A user can add, change and delete dictionaries and services. This module interfaces with the accounts receivable module to keep track of records, and with the term rights purchase module, to track site sponsorships. The module also handles the payment of the sales and/or services purchased, and generates sales quotes.

Kiosk 460

This module processes files that occur outside of typical hosted service environments. Examples of such occurrences are submission of documents from the World Wide Web and from a desktop for processing, credit card transactions, one-off processing, uploading, and downloading of documents.

eMarketing Management 120

FIG. 5 illustrates the modules in this core component group 120 that enable participants to manage eMarketing efforts for both term sponsors and portal sites that have contextual eMarketing.

Term Inventory Manager 510

This module defines term sponsorship opportunities on contextual eMarketing sites. Sites can customize their term sponsorship opportunities by defining term sponsorship opportunities variables, defining pricing models, interfacing with the eMarketing database and interfacing with the Click Info module.

Term sponsorship opportunities are defined by editing domain, layer, readership and term periods associated with sponsorship of a term or cluster of terms. Pricing model variables include specifying the terms in a cluster, setting a fixed price for a cluster, having an auction for a cluster, and setting the time period for which a price is active.

This module interfaces with the eMarketing Database to edit and store sponsorship opportunities, and make them available to sponsors. The module interfaces with the Click Information Database to track impressions and interfaces with the Term Database to serve appropriate content and rotate content.

Term Rights Purchase 520

This module enables a user to search for sponsorship opportunities and buy rights to include contextual marketing material when a term is clicked on. A user searches for a term across sites to determine the availability of sponsorship opportunities. If a sponsorship opportunity is available, the user has the opportunity to purchase the sponsorship opportunity for that site.

This module can process payment for sponsorship opportunities and also handle invoicing. Different pricing systems are available, such as fixed pricing, auctions, discount pricing for multiple ads and pricing based on term length, and pricing based on a guaranteed number of impressions. The eMarketing database stores sponsorship availability notifications and any rights purchased.

Portal Reporting 530

This module generates sponsorship reports for contextual eMarketing portals. A user can view what terms on a site are sponsored, see who the sponsor of a term is, the terms of that sponsorship, and click information statistics such as impressions and click-throughs.

Sponsor Reporting 540

This module generates sponsorship reports for contextual eMarketing sponsors. A user can view what terms they have sponsored for a particular site or across all sites, the terms of that sponsorship, and click information statistics such as impressions and click-throughs.

Term Discovery Utilities 125

FIG. 6 illustrates the modules in this core component group 125 that automate the process of discovering and collecting terminology. The terms in the list can then be made available for sponsorship or have content associated with them through the Content Manager 1120 module.

Term Finder 610

FIG. 7 is a flowchart that illustrates the term finder module. The term finder module performs a full text index of a corpus of documents such as a website and generates a list of terms that may be of interest 700. The term finder is directed to a top-level folder and then recursively crawls through that folder and every sub-folder searching for all files that match a specified file type or types. Files matching the specified types are parsed 710 using natural language processing to tokenize the text into significant objects such as words and phrases until a full index of all words and phrases on the site is created.

From this full index, terms of interest are chosen using a set of rules. These rules include for example, but not by way of limitation, whether or not the term currently exists in a database, whether there is an unusually high frequency of use of the term, the type of term and whether the term is used in an unusual manner. Examples of types of term rules are product names and company names. An example of a term used in an unusual manner is a verb used as a proper noun. As terms are chosen, a list is created containing terms of interest as well as the rules that led to their selection. The pages and sites on which the terms occur are noted and categorized.

Frequency values are determined by using a normalization factor. The normalization factor is calculated by taking the term in its chain context, and dividing it by its overall appearance in all chains on the site. For example, the chain “Pokemon video on DVD” may appear once on a website, that also mentions Pokemon nineteen other times on the site. The other nineteen times discuss Pokemon trading cards and Pokemon lunch boxes. Thus the normalized frequency would be one in twenty, or 0.05. A normalized threshold such as 0.20 or higher is required by this rule to classify the website as pertaining to a term and thus select this term. Thus, in this example this website is not classified as pertaining to Pokemon videos on DVD and Pokemon videos on DVD is not selected because 0.05 is not greater than or equal to 0.20.

The selected terms are then categorized by field of pertinence 720. For example, the term Pokemon can be categorized as an animated series, toy, or game. The term is then sent to experts 730 in each field of knowledge. Each expert analyzes the term in context, determines how the term should be categorized by accepting, rejecting, or modifying the categorization choices made by the system, and enters annotation content for the term. In the example, if the term “Pokemon video on DVD” is sent to an expert, then this term is categorized 740 in the animated series section and appropriate annotations added. If the term refers to Pokemon trading cards, then that term is categorized and annotated in the game section. If a term is familiar and/or known it bypasses the experts and goes straight to the Term Database 750 and is associated with existing annotational content as well as being made available for additional expert annotation.

Terms from the database are tagged in source documents 760 using the RichLink Processor or other automated methods such as those disclosed in U.S. Pat. No. 5,822,720, System and method for linking streams of multimedia data for reference material for display, Oct. 13, 1998, Bookman et al. The tag can serve functions such as linking to a RichLink Content Window containing additional information or marking the term for an application performing further processing of the page. The final result 770 is a tagged and annotated enhanced document 175.

The RichLink Content Window 170, which displays information related to the term, is available by clicking on a tagged term. The information contained in a RichLink Content Window comes from a multitude of sources including annotations added by experts 740, related products or services, sponsorship information, information from content syndicators, translations and reference works.

Term List Editor 620

This module aids an expert to review and edit the list created by the term finder module. Examples of editing features are view list, view term in context, expand terms, truncate terms, add terms, delete terms, sort list, and save list. FIGS. 8A-8D illustrate the term finder list editor screen. A user can click on a Context tab 840 to view the term in the context of the original page inside a Context window 880, where the occurrence of the term is highlighted as shown in FIG. 8B. The user can drag the highlighted area 860 to change what portion of the term is selected as shown in 8C. Tabs are located to the left 814, 816 and right 824, 826 of the term or phrase 830. A user clicks on the tabs to extend 814, 826 or reduce 816, 824 portions of the phrase that surround the term. For example, in FIG. 8D, the user has clicked on the left reduce tab 814, so the selection reduces one word. These extend and reduce tabs work whether the Context window is open or not. Once the desired term is selected, the Commit tab 870 can be selected to make the changes in the Term database. An Annotations tab 850 is also present. The Annotations tab 850 displays known annotations for the word when selected.

This module interfaces with the Terms Database to create new terms if the term did not previously exist, with the Term Inventory Manager to create sponsorship opportunity definitions for words that have not already been sponsored, and with the Content Builder to request content for a term.

This module also provides list management support for modules that use lists of terminology, such as the Term Rights Purchase module and the Content Manager module. Lists of terminology created in this module can be loaded within other modules to filter to a desired list of terms. User tools include, create list, load list, save list, save list as, and delete list of terms. A saved list may be assigned to a specific module or made available to other users. A comparator function can be used to analyze two or more lists to merge the lists, delete duplicates, or find duplicates.

Term List Site Matcher 630

This module will accept a list of terms and a top-level folder in a corpus of documents such as a website as inputs. It will recursively crawl through the top-level folder and every sub-folder searching for all files that match a specified file type or types. An index is generated showing occurrences of terms in the list on pages in the site. Statistics such as occurrences, frequency and whether the term is already linked or sponsored are noted.

Richlink Processor System 130

The modules in this core component group 130 enable the process where in-context information is automatically linked to documents.

RichLink Processor 910

This module takes normal source pages and automatically enhances them through links to content from a variety of sources, such as authoritative reference works and dictionaries, dictionaries of syndicated content, customer-created dictionaries, and dictionaries of sponsored terminology allowing third parties to attach advertising content to occurrences of terms on sites or through tags which identify and provide information about the terms they surround. The result is an enhanced page 175 that contains links to the additional content. Processing may occur in real-time between page request and page display in a web server environment or it may occur offline as a pre-processing step to publishing documents. The process can be performed on common file types such as XML, HTML, RTF, Word documents, and Adobe Acrobat PDF files.

The RichLink Processor interacts with the Template Object 930 to identify the rules that should be used in processing and the Lexicon Object 920 to identify what terms should be tagged in the source text. Tags in the page identify whether a page should be processed by the RichLink Processor or not, denote sections of a page to be processed, and indicate the template that should be used in processing that page/section.

Tags may be inserted to identify page-level metadata criteria that should be used to limit the result set when tagging the page. For example, a tag may be inserted into the page identifying the page as belonging to the category “Video Games”. This tag can then be used to limit matches to terms or annotations that have also been identified as belonging to the category “Video Games”. Page-level metadata tags may be inserted ahead of time or when the page is dynamically constructed.

When a file is sent to the RichLink Processor, several operations can be optionally run on the text. The text may be parsed, the document categorized, and page-level meta data tags added to the page. The document content may be summarized. Matches between terms on the page and terms occurring in the Lexicon Object for dictionaries specified by the template used with this page are identified. A tag is created around matched terms if meta data or other criteria are met. Typically this tag is a hyperlink that leads to additional annotational content, however additional tag structures can be used. Finally, the document may be inserted into the Term Database as annotational content for identified category keywords.

A user interface is provided which allows administrative access to process and queue controls, view, search and sort log data, and process statistics.

Lexicon Object 920

The Lexicon Object provides a local representation of the content of the Term Database for use by the RichLink Processor 910 so a direct connection to the Term Database is not required and the Term Database may be on a remote server from the RichLink Processor. The Lexicon Object contains data required to match terms and create tags such as a representation of the terms in the database optimized for fast matching by the RichLink Processor, the TermID from the Term Database, the DictionaryID from the Term Database, and other Term Database content for which fast access is required, such as annotation content.

The Lexicon Object may be stored once on a single server and accessed by all active RichLink Processor instances running on that server. Or it may be stored once on a central server and accessed by active RichLink Processor instances on multiple servers. It can contain lexicons for multiple dictionaries in a single object instance.

Template Object 930

The Template Object provides a local representation of the Template that contains the rules for processing and linking a file so a direct connection to the Template Database is not required and the Template Database may be on a remote server from the RichLink Processor. The Template Object contains the rules required by the RichLink Processor such as dictionaries used for linking or as filters (stop word lists), meta data criteria that must be met when making a match, the format of the tag to be inserted before and after a matched term including macros to be expanded by the RichLink Processor with data specific to the matched term, run-time processing options such as limiting the number of matches found or turning stemming on and off, and any code required to be placed into the page to enable operation of the RichLink Content Window or other applications

The Template Object may be stored once on a single server and accessed by all active RichLink Processor instances running on that server. Or it may be stored once on a central server and accessed by active RichLink Processor instances on multiple servers. It can contain multiple templates in a single object instance.

Lexicon and Template Manager 940

The Lexicon and Template Manager insures that the Lexicon Object 920 and Template Object 930 are synchronized with the Term and Template Databases. When the server is started, the manager is automatically launched. It accesses the Term Database to obtain the latest version of the Lexicon Object for that server and accesses the Template Database to obtain the latest version of the Template Object for that server, as shown in FIG. 9B. The Lexicon Object and Template Object are then stored in the server's memory where they can be accessed by any active RichLink Processor instances running on that server.

The Lexicon and Template Manager must log into the databases. Preferences are enforced based on that login so the server only obtains lexicons and templates for which they have privileges.

The Lexicon and Template Manager may also be triggered via remote request, such as an HTTP request, so manual refreshes of the Lexicon Object and Template Object can occur while the server is running. The Lexicon and Template Manager also includes a timer function to trigger scheduled refreshes of the Lexicon Object and Template Object.

RichLink Contextual Content Server 135

FIG. 11 illustrates the modules in this core component group 135 that enable end users such as customers, partners, or hosted service team members to create, manage, and modify templates, dictionaries, and content windows.

RichLink Template Manager 1010

This module provides an environment for creating templates that define the rules by which source files are processed, as well as how templates are managed for each customer. The template defines parameters such as dictionaries and filters, meta data criteria, look and feel of the content window, and source page tag structure.

A user has many options to modify a template including adding, changing or deleting entire templates.

Layout settings include background colors and images for the regions of the content window, custom content to be added before or after system generated information, logo or advertising image files and the location they link to, icons for help, print, or feedback options, and the location they link to.

Layer settings include adding, deleting or modifying layers, setting the order of appearance for layers, styles for text in the layer, and specifying the elements which appear in either the content or navigation area for a layer. Elements that can be used include system generated information like Term, Layer Name, Annotation Title, RichLink Dictionary Content, and Citation. Other elements include user decorative elements like blocks of custom-entered text, images (with or without links), line breaks, and horizontal rules.

RichLink Dictionary Content settings include the dictionaries to be used for linking in that layer. Settings for each dictionary may be further customized such as whether the dictionary should be used as a filter or not, whether page-level metadata criteria will be used with this dictionary by the RichLink Processor 910, any standard metadata criteria to be used in matching, the Citation string to be used for this dictionary, or a custom query to be used to fetch content for this dictionary. Unless a custom query is specified, a generic query is generated based on RichLink Dictionary Content settings.

RichLink Dictionary Content settings may also include rules-based content generation. An example of a rule would be to use a mix of content types like no more than 60% text, 20% images, 10% audio, and 10% video. Another example of a rule would be to rotate content which matches a given criteria so a different piece of content shows up on subsequent viewings. Another example of a rule would be to only show content during a specified date range or only for a specified number of impressions, as in the case of a marketing campaign.

An option is given to a user so that he may preview an annotation or other linked content.

RichLink Content Window Editor 1120

This module enables the manual creation of term-specific content windows, which will be added to a processed file in addition to content windows generated by page-level rules specified in the template. This way, a product name such as “Microsoft Word” could have a content window with a different set of links than “Pokemon” inserted during the same processing run.

The user interface controls for the Content Window Editor would be mostly the same as the Template Manager. Inside of the Content Window Editor a user may also make requests to see content available for the term in dictionaries they have privileges for, search other dictionaries for available content and purchase content, and to send a term to the Content Manager module for expert annotation.

RichLink Content Editor 1130

This module 1130 is a workflow and editing application that enables editing of content within the Term Database, administration of dictionaries, and management of a virtual team of content submitters 150 to build dictionary content. The service host would use this module to gather a group of experts together and expedite content submission when building dictionaries. A list of terms is created using the Term List Editor 620 that define the content to be created. Individual terms from the list can be assigned manually or automatically to an expert based on the expert's area of knowledge. The expert submits content for the terms assigned to them.

For example, content sponsors can use this module to assign lists of terms they are sponsoring to the advertising agencies or internal creative services teams responsible for submitting sponsored content for those terms. A marketing team building a dictionary of product information can assign product names to the managers associated with those products or product lines. Research services building a dictionary of company information can assign company names to the analysts responsible for tracking that company or that market space.

The group or individual assigned terms in this way will have an editing interface that enables them to submit content for their list of terms. The types of content that may be submitted include text, links, images, movies, sound files, response forms, or mixtures of some or all of these. Meta data may be specified for the term and content to categorize it. Searches may be performed to find terms and content or to locate additional resources for a term. For example, an expert could search dictionaries for which they do not have privileges for suitable content and then purchase content to be used with their term.

Workflow rules drive content through submission, review, revision, and acceptance cycles, by notifying, assisting, and providing an interface for responsible parties to take action on submissions. For example, an expert can view a list of terms for which they need to submit new content, view a list of terms and content which was returned for revision along with comments on the desired revisions, and submit new or revised content. A content sponsor can view a list of terms and content that has recently been submitted, review it, and then either accept it, reject it, or return it for revisions with comments.

This module also enables editing access to the Term Database and dictionaries for administrators, content team members, partners, and customers. Individual terms and content can be added, modified, or deleted. Dictionary administration actions may be performed such as adding, changing, or deleting dictionaries, specifying dictionary settings, managing the meta data group and value lists used by RichLink Processor as match criteria, maintenance procedures to clean up tables and indexes, mapping fields from an external database to the Term Database in order to merge data from one to the other or to provide pointers to data from one to the other, and scheduling regular merges of data for synchronization.

This module allows users to preview content by displaying text directly within the editor, clicking links to view the page a link leads to, providing thumbnails of images and movies as well as links to the full image or movie, linking to sound files, and displaying file sizes.

RichLink Content Delivery Servlet 1050

This module retrieves and displays content by constructing and serving the RichLink Content Window 170. A request is made to the RichLink Contextual Content Server which contains information such as the ID of the term clicked on, the ID of the template used in processing the page, page-level metadata settings, and the customer ID. This module interacts with the Term Database and the Template Manager to select and display the appropriate content, navigation elements, and display elements in the RichLink Content Window.

The RichLink Content Window may be returned in multiple formats such as HTML pages, an XML document which can be transformed as desired before sending it to the browser or to an application, an embedded pop-up window, or using technologies such as Flash to build a display environment.

Click Info Capture 1060

This module tracks a user's click information by tracking each session within the RichLink Content Delivery Servlet. An anonymous session ID is assigned and information such as the page a click originated from, terms clicked on, layers clicked on, content viewed, start and end times for a session, template IDs, customer IDs, response times, and click throughs are noted.

This module is integrated with the eMarketing module 120 and the Term Database 240 to track, report on, and manage sponsorship opportunities which are based on or expire after a certain number of end-user impressions. It is also integrated with the Click Information Database 230 to store click data and the Activity Reporting module 440 to report on end-user activity.

Data Synchronizers 1070

This module provides synchronization between customer databases containing terms and content and the Term Database. When customers already maintain relevant databases, this module will map fields from the customers' database to fields in the Term Database and migrate data between the two systems. Synchronization of data can be scheduled so transfers between the two databases occur automatically when a change is made in the customer's database or at a scheduled time each day, week, or month.

Tools are provided that assist in creating maps of the fields between databases and synchronization for most commercially-used database formats, such as Oracle, MS SQL, Informix, Sybase, and IBM DB2.

RichLink Content Window 170

The modules in this core component group enable interaction with annotation content in on-line documents. It includes viewing information within a content window after clicking on a word or phrase, viewing, searching and sorting data in the content window, setting user preferences, and alternate viewing environments, such as a floating toolbar.

RichLink Content Window 1110

When a user clicks on a word or phrase, content is displayed in a RichLink Content Window that is typically placed in a pop-up window but which can also be embedded into a page. The RichLink Content Window may be formatted for single or multi pane display of content. Menu options listing available content are presented in a Navigation Pane while content associated with the term and menu item chosen appears in a Content Pane.

Content comes from the dictionaries stored in the Term Database. The content comes from types such as text, images, movies, sounds, forms (including eCommerce transactions, surveys, or polls), or a mixture of the above. Content may be saved on the client side so that it may viewed off-line, searched, printed, or sent to someone.

Links are present within both panes of the Knowledge Burst, and a user may navigate the links as with a mini-browser. Some links may be proprietary, requiring a password, payment of fees or both. Ads, logos, text links or other branding and informational elements may appear in the pop-up menus or in the decorative frames surrounding the content and navigation panes and may be served from the RichLink Content Delivery Servlet, the customer's own site, or third-parties such as ad serving companies.

A content window initially appears at the location of the term clicked on, but a user may move the content window to any area of the display.

Multiple touch points exist where a user can view a content window, such as a PDA, cell phone or computer.

Floating Toolbar 1120

This is an alternative content window menu that offers advanced features, such as, search, sort, credits, about and help on the entire group of RichLink content available on a page. The floating toolbar is similar to the RichLink Content Window in that the same capabilities are available. Additionally, all variations of the content can be viewed. A user also has the option to set persistent user options such as linking highlights, collapsible or exploded menus, and which layers are displayed. A user may use the default search and filtering criteria, or may set and save his own. The toolbar also generates content lists that contain suggestions for further research. For example, “users who liked this RichLink content also liked the following information.”

Term Database 240

The modules in the Term Database represent the types of dictionaries of information that may be managed by the system.

Licensed Dictionaries 1210

Licensed dictionaries include licensed and/or approved third party information, such as translation dictionaries, reference works, and dictionaries of unbiased and high quality information. The content in these dictionaries is licensed to sites to enhance content for global audiences and/or to enhance a user's depth of knowledge.

Examples of translation dictionaries are Kenkyusha Readers or other foreign language dictionaries. Examples of reference works are the American Heritage or Physician's Desk Reference. Examples of unbiased, high quality information sources are Facts and Comparisons which provides drug information, Dun & Bradstreet which provides financial information, and Intelligent Medical Objects which provides links to medical journals, publications, and sites.

Custom Dictionaries 1220

Custom dictionaries include any kind of dictionary that is created by a customer for use on authorized sites. This commonly occurs on internal sites where the terms are proprietary information, and are not made available to the general public. Typical terms in a custom dictionary include company-specific terminology with definitions and translations or product names with product information and news.

Sponsored Dictionaries 1230

Sponsored Dictionaries contain content provided by third parties for use wherever a term that they have purchased appears during a certain period of time or for a number of impressions. Most often this involves companies purchasing rights to provide sponsored content from a site. Sponsored content can take almost any form, such as text, images, mixed media, banner ads, surveys, links, and email requests.

Although the invention is described herein with reference to the preferred embodiment, one skilled in the art will readily appreciate that other applications may be substituted for those set forth herein without departing from the spirit and scope of the present invention. Accordingly, the invention should only be limited by the Claims included below. 

The invention claimed is:
 1. A computer implemented method for processing data, the method comprising the steps of: receiving one or more data objects associated with a database at one or more remote computers; parsing one or more documents to identify at least one term based on at least one rule; identifying content for the at least one term, wherein at least a portion of the identified content is stored in the database; and associating the at least one term with the identified content; wherein the one or more data objects associated with the database provide a representation of at least a portion of the database at the one or more remote computers and are used to link the identified content with the at least one term.
 2. The method of claim 1, further comprising the step of: providing a sponsorship opportunity to at least one entity to sponsor the at least one term, wherein a content window is associated with the at least one term.
 3. The method of claim 1, wherein the content comprises one or more of definitions, related products, related services, sponsorship information, translation, and reference works.
 4. The method of claim 1, wherein the one or more data objects comprise a template object for identifying at least one rule for processing a source page.
 5. The method of claim 1, wherein the one or more data objects comprise a lexicon object for identifying at least one term for tagging in a source page.
 6. The method of claim 1, wherein the identified content is displayed on a user interface in response to a selection of the at least one term by a user.
 7. The method of claim 1, wherein all of the identified content is stored in the database.
 8. The method of claim 1, wherein the content comprises one or more of text, image, sound, video and mixed media.
 9. A computer implemented system for processing data, the system comprising: a processor for parsing one or more documents to identify at least one term based on at least one rule; a module for identifying content for the at least one term, wherein at least a portion of the identified content is stored in a database; and an interface for displaying the identified content based upon a user interaction with at least a portion of the one or more documents; wherein one or more data objects associated with the database are received by one or more remote computers for providing a representation of at least a portion of the database at the one or more remote computers and for linking the identified content with the at least one term.
 10. The system of claim 9, wherein a sponsorship opportunity is provided to at least one entity to sponsor the at least one term.
 11. The system of claim 9, wherein the content comprises one or more of definitions, related products, related services, sponsorship information, translation, and reference works.
 12. The system of claim 9, wherein the one or more data objects comprise a template object for identifying at least one rule for processing a source page.
 13. The system of claim 9, wherein the one or more data objects comprise a lexicon object for identifying at least one term for tagging in a source page.
 14. The system of claim 9, wherein the identified content is displayed on the interface in response to a selection of the at least one term by a user.
 15. The system of claim 9, wherein all of the identified content is stored in the database.
 16. The system of claim 9, wherein the content comprises one or more of text, image, sound, video and mixed media.
 17. A computer implemented method for processing database content, the method comprising the steps of: receiving one or more data objects associated with a database at one or more remote computers; parsing one or more source documents to identify at least one term based on one or more predetermined rules; identifying content for the at least one term, wherein at least a portion of the identified content is stored in the database; linking the content with the at least one term; and wherein the one or more data objects associated with the database provide a representation of at least a portion of the database at the one or more remote computers; and wherein the linked content is displayed on a user interface based upon a user interaction with at least a portion of the one or more source documents.
 18. The method of claim 17, wherein the one or more source documents are parsed at the one or more remote computers.
 19. The method of claim 17, wherein the user interaction comprises a user selecting the at least one term with a mouse cursor.
 20. The method of claim 17, wherein the at least one term is visibly enhanced to notify the user of available content.
 21. The method of claim 17, wherein the content comprises at least one advertisement.
 22. The method of claim 17, wherein one or more of the predetermined rules are based on frequency of a term within a source document.
 23. The method of claim 17, wherein one or more of the predetermined rules are based on manner of linguistic usage of a term.
 24. The method of claim 17, wherein one or more of the predetermined rules are based on presence or lack thereof of an entry in the database.
 25. The method of claim 17, wherein one or more of the predetermined rules are based on availability of content for a term.
 26. The method of claim 17, wherein one or more of the predetermined rules are based on quality or amount of available content for a term.
 27. The method of claim 17, wherein one or more of the predetermined rules are based on one or more financial incentives. 